home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac-Source 1994 July
/
Mac-Source_July_1994.iso
/
C and C++
/
Compilers⁄Interps
/
kevoSource
/
README.SOURCE
< prev
next >
Wrap
Text File
|
1993-05-13
|
3KB
|
74 lines
Kevo has been written in C and should be relatively easy to port
to other machine platforms. The only part which requires major
porting is the object browser. The source is pretty well commented
and should be relatively easy to understand at least to those who
are familiar with threaded interpretive languages and know the
basics of prototype-based object-oriented programming. If you have
any questions, send e-mail to one of the addresses below.
Have fun!
-- Antero Taivalsaari
tsaari@cs.uta.fi
kevo-interest@ursamajor.uvic.ca
--------------------------------------------------------------------
Description of Kevo's source files:
The files have been divided into two categories, according
to whether they are supposed to be portable or not.
The (almost) portable files are:
main.c The main program and system initialization
kernel.c Inner interpreters and most elementary primitives
prim.c Primitive operations
global.c Global variables and other system-wide definitions
memory.c Memory allocation primitives
context.c Object name space (vocabulary) management primitives
tasks.c Multitasking primitives
files.c File input/output and redirection primitives
image.c Image file loading primitives
keybuf.c Keyboard buffer primitives
signals.c Exception handlers (this is quite limited on Mac)
debug.c Debugging primitives
blockfiles.c Virtual memory management (Forth-style block files)
lists.c Special linear list structure for clone families etc.
family.c Clone family management primitives
recompile.c Early binding routines for CUT/COPY/PASTE operations
Files that require major porting are:
portEvents.c The event loop and general Mac application framework
portGlobal.c Non-portable global variables and definitions
portPrim.c Non-portable primitive operations
portWindow.c Window management primitives
portBrowser.c The browser
portEdit.c Browser's CUT/COPY/PASTE primitives
iconDef.c List definition procedure (LDEF) for displaying icons
in the browser (this is _very_ Mac-specific)
--------------------------------------------------------------------
Comment: When compiling the files under Think C, the following
fragment of code has to be commented out from file 'console.c'
in Think C's ANSI library. Otherwise the "cancel" operation
(Command-period) will often cause the Kevo system to quit
which is not the desired behavior.
/* check for interrupt */
/* Comment out this:
if (interrupted) {
interrupted = 0;
FlushEvents(keyDownMask, 0);
fp->cnt = 0;
raise(SIGINT);
errno = EINTR;
result = EOF;
}
*/